home *** CD-ROM | disk | FTP | other *** search
/ Cracking 2 / Cracking II..iso / Tools / ApiHooks 2.2 / examples / ASM / alternative / AlternativeEXE.bat < prev   
Encoding:
DOS Batch File  |  2000-04-09  |  1.6 KB  |  68 lines

  1. ;@goto translate
  2.  
  3.  
  4. .586P
  5.  
  6. .MODEL            FLAT, STDCALL
  7.  
  8.    OPTION         CASEMAP: NONE
  9.  
  10.    UNICODE        = 1
  11.    INCLUDE        WINDOWS.inc
  12.    INCLUDE        APIMACRO.mac
  13.  
  14.    INCLUDELIB     iKERNEL32.lib
  15.    INCLUDELIB     iUSER32.lib
  16.    INCLUDELIB     iApiHooks.lib
  17.  
  18.  
  19. .CODE
  20.  
  21.  PrimaryThread PROC
  22.    iWin32     GetCurrentProcessId 
  23. ; loaded statically
  24.    iWin32i    LoadAndCall, sAlternativeDll, EAX, 1, NULL
  25. ;   TEST      EAX, EAX 
  26. ;   JNE       Failed
  27.  
  28. ; or dynamic loading
  29. ;   iWin32i   LoadLibrary, sApiHooks
  30. ;   TEST      EAX, EAX
  31. ;   JE        Exit
  32. ;   iWin32    GetProcAddress, EAX, sLoadAndCall
  33. ;   TEST      EAX, EAX
  34. ;   JE        Exit
  35. ;   sWin32    EAX, sAlternativeDll, prinfo.dwProcessId
  36. ;   TEST      EAX, EAX 
  37. ;   JNE       Failed
  38.  
  39.    iWin32    MessageBoxA, NULL, sAlternativeMsg, sAlternativeTitle, MB_OK
  40.    iWin32    GetCurrentProcessId 
  41.    iWin32    UnloadModuleA, sAlternativeDllA, EAX, 10
  42.   Failed:
  43.    iWin32    ExitProcess, STATUS_SUCCESS
  44.  
  45.  
  46.  PrimaryThread ENDP
  47.  
  48.    TEXT     AlternativeDll,   <Alternative.dll/0>
  49.    TEXTA    AlternativeDllA,  <Alternative.dll/0>
  50.    TEXTA    AlternativeTitle, <MessageBox/0>   
  51.    TEXTA    AlternativeMsg,   <From .EXE/0>   
  52. ;   TEXT     ApiHooks,         <ApiHooks.dll/0>
  53. ;   TEXT     LoadAndCall,       <LoadAndCall>
  54. ;    IF UNICODE
  55. ;       CHAR 'W'
  56. ;    ELSE
  57. ;       CHAR 'A'
  58. ;    ENDIF
  59. ;       CHAR  0
  60. END PrimaryThread
  61.  
  62. :translate
  63. @echo off
  64. ML    /c /coff /nologo AlternativeEXE.bat
  65. eLINK AlternativeEXE /out:Alternative.exe /nologo /SUBSYSTEM:WINDOWS /optidata /MERGE:.rdata=.text /BASE:0X32890000 /IGNORE:4078
  66. DEL   AlternativeEXE.obj
  67. PAUSE
  68. CLS